As integrated circuit design has advanced, integrated circuits have become smaller, faster, and more sensitive. As a result, the performance of an integrated circuit is impacted by a variety of factors both during and after manufacturing. During manufacturing, process variations can result in integrated circuits having different properties such as varied impedance. After manufacturing when an integrated circuit is in use there may be variations that depend on voltage and temperature. For example, voltage variations may impact the speed of components of an integrated circuit. Further, an integrated circuit may be impacted by the temperature of the surrounding environment. The variations of process, voltage, and temperature are referred to as PVT variations.
FIG. 1 shows a conventional system for calibrating a driver circuit of an integrated circuit during operation of the circuit. Conventional system 100 or integrated circuit 100 includes two additional circuits 101a and 101b that duplicate the drive functionality and are used for calibration. These two additional circuits provide additional signal paths for calibration of the integrated circuit. Circuits 101a and 101b utilize additional balls or pins on an integrated circuit dedicated to calibration.
Circuit 101a includes pull up circuit 102a, pull down circuit 104a, pull down resistor 106a, comparator 108a, reference voltage 112, and state machine 110a. When enabled, state machine 110a varies a code which is issued to variable pull up resistor 102a which adjusts the impedance of pull up circuit 102a. Pull up circuit 102a is coupled to precision resistor 106a. Pull down resistor 106a is located on a circuit board and coupled to integrated circuit 100a via an integrated circuit ball such as output 105a. Precision resistor 106a is further coupled to comparator 108a. Comparator 108a receives a voltage signal from reference voltage 112 and output 105a. Reference voltage 112 is half of the power supply voltage. When the impedance of pull up circuit 102a is adjusted such that it is equal to the impedance of pull down resistor 106a, the input to comparator 108a will be half of the power supply voltage. As codes are issued to pull up circuit 102a and the impedance of pull up circuit 102a varies, the voltage received by comparator 108a will vary. Thus, when the code issued to pull up circuit 102a results in the inputs to comparator 108a being close or equal, that code can be issued to all drivers of the device to calibrate the pull up circuits in system 100.
Circuit 101b calibrates the pull down side and works similarly to circuit 101a. Circuit 101b includes pull up circuit 102b, pull down circuit 104b, pull up resistor 106b, comparator 108b, reference voltage 112, and state machine 110b. Pull down circuit 104b is coupled to state machine 110b and pull up resistor 106b. State machine 110b controls the impedance of the pull down circuit 104b by issuing a sequence of control codes to pull down circuit 104b. State machine 110b receives a signal from comparator 108b which compares reference voltage 112 and the voltage at output 105b. State machine 110b issues a control code to pull down circuit 104b which changes the impedance and based the output of comparator 108b, state machine 110b determines the code which corresponds to the impedance of pull down circuit 104b matching the impedance of pull up resistor 106b. This code is sent to all drivers of the device.
Thus, state machines 110a and 110b can vary the impedance codes by scanning up and down the control codes. State machine 110a observes the voltage level changes on balls and the correct impedance codes can be determined when desired voltage level is reached. Thus, system 100 may track process, voltage, and temperature variation while the circuit is in operation.
While system 100 allows a circuit to be calibrated during operation, the calibration system requires extra dedicated calibration circuitry and supporting logic, accurate resistors, integrated circuit package balls, and power. The additional circuitry required makes the circuit more expensive to manufacture. Also, the extra integrated circuit package balls restricts the number of available input/outputs and therefore makes circuit design more complex. The use of additional power is particularly problematic for devices having limited power resources such as mobile devices, etc.